package 简单.其他;

/**
 * 给定一个初始元素全部为 0，大小为 m*n 的矩阵 M 以及在 M 上的一系列更新操作。
 * <p>
 * 操作用二维数组表示，其中的每个操作用一个含有两个正整数 a 和 b 的数组表示，含
 * 义是将所有符合 0 <= i < a 以及 0 <= j < b 的元素 M[i][j] 的值都增加 1。
 * <p>
 * 在执行给定的一系列操作后，你需要返回矩阵中含有最大整数的元素个数。
 * <p>
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode-cn.com/problems/range-addition-ii
 */
public class 范围求和II_598 {

    public static void main(String[] args) {

    }

    /**
     * 注意是需要返回矩阵中含有最大整数的元素个数
     * 所以求的是ops中x轴的最小，y轴的最小元素
     *
     * @param m
     * @param n
     * @param ops
     * @return
     */
    public int maxCount(int m, int n, int[][] ops) {
        if (ops.length > 0) {
            for (int[] op : ops) {
                //这里的rows和columns是否对应并不重要，只需要确定m，n只只能代表其中某一个就行
                m = Math.min(m, op[0]);
                n = Math.min(n, op[1]);
            }
        }
        return m * n;
    }

}
